Computers have become highly integrated in the workforce, in the home, and in mobile devices. Computers can process massive amounts of information quickly and efficiently. Software applications designed to run on computer systems allow users to perform a wide variety of functions including business applications, schoolwork, entertainment and more. Software applications are often designed to perform specific tasks, such as word processor applications for drafting documents, or email programs for sending, receiving and organizing email.
In some cases, software applications can be used to generate and manipulate models. For example, businesses and other entities may use models to describe processes and systems. Models may also represent different types of information in various forms. In some cases, a model may represent data in the form of a flow diagram. In other cases, a model may represent data in the form of process flows, flowcharts, process diagrams and/or control charts. In other cases, models are used to illustrate organizational relationships between resources in a system. These models are often referred to as organizational charts. In a broader sense, models may be used to show any type of relationship information between different objects.
Typically, models have associated schemas that describe the terminology used in the model. The schema acts as a sort of legend, allowing a user or software application to consult the schema to determine the intended meaning of a term or symbol used in the model. Some schemas can include user-definable tags (e.g. extensible markup language (XML) tags), as well as metadata that corresponds to various elements in the model. The metadata can be used to describe properties of an object such as the object's look and feel, its layout and even its content. Thus, computer-run software applications can be used to generate and manipulate models.